home *** CD-ROM | disk | FTP | other *** search
/ No Fragments Archive 12: Textmags & Docs / nf_archive_12.iso / MAGS / SOURCES / ATARI_SRC.ZIP / atari source / DSHJ2 / DBASE.H < prev    next >
Encoding:
C/C++ Source or Header  |  2001-02-10  |  2.7 KB  |  114 lines

  1.  
  2. #include "comp.h"
  3.  
  4. #define PTSBLK    struct ptsblk
  5. struct ptsblk
  6. {
  7.     PTSBLK        *nextblk;
  8.     int        points[8];
  9. };
  10.  
  11. #define PRIMITIVE struct primitive
  12. struct primitive
  13. {
  14.     int        op;
  15.     int        wrmode;
  16.     int        numpts;
  17.     PRIMITIVE     *nextprim;
  18.     PTSBLK        *blkptr;
  19. };
  20.  
  21.  
  22. #define SCANINFO struct scaninfo
  23. struct scaninfo
  24. {
  25.     int         x1;
  26.     int         y1;
  27.     int         x2;
  28.     int         y2;
  29.     char         *textptr;
  30.     struct slvll     *slaveptr;
  31.     SCANINFO    *nextscan;
  32. };
  33.  
  34.   
  35. #define ARTICLE struct article
  36. #define REGION struct region
  37.  
  38. struct region
  39. {
  40.     PRIMITIVE     *primlist;
  41.     ARTICLE        *artptr;
  42.     REGION        *plink;            /* Next link by pages       */
  43.     REGION        *alink;            /* Next link by article     */
  44.     SCANINFO    *scanlist;        /* Pointer to rectangle info*/
  45.     int         x1;            /* Corners of the bounding  */
  46.     int         y1;            /* rectangle containing all */
  47.     int        x2;            /* of the primitives in the */
  48.     int        y2;            /* region            */
  49.     int        p;            /* Page number of the region*/
  50.     char        *txtstart;        /* Start of text in region  */
  51.     struct txtattr  text;            /* Text attributes        */
  52.     int        grattr[11];        /* Attribute block        */
  53.     int        type;            /* text or graphic region   */
  54.         int         reserved;        /* 2 reserved words        */
  55.     int        res1;
  56.     int         multi_select;        /* multiple regions selected */
  57. };
  58.  
  59. struct article
  60. {
  61.          ARTICLE        *nextart;        /* Pointer to next article  */
  62.     unsigned char    *buf_start;        /* Starting address of text */
  63.         unsigned char    *buf_end;        /* End of allocated buffer  */
  64.     unsigned char    *free_start;        /* End of text within buffer*/
  65.     unsigned char    *current_char;        /* Current character pos.   */
  66.     REGION        *regptr;        /* First region in it's list*/
  67.     char         filename[40];        /* File name of article     */
  68.     int        dirty;            /* dirty article flag - R,X */
  69. } ;
  70.  
  71. #define PAGE struct page
  72. struct page
  73. {
  74.     int         pagenum;
  75.     PAGE        *nextpage;
  76.     REGION      *regptr;
  77. };
  78.  
  79. #define TRUE         1
  80. #define FALSE        0
  81.  
  82. #define MAXBLK         8
  83.  
  84.  
  85. #define PNUMBER struct pnumber    /* page number structure */
  86. #define MAXBLK         8
  87. #define PTEXTMAX    50
  88.  
  89. struct pnumber
  90. {
  91.     int pfnum;            /* font number */
  92.     int pptsize;        /* point size  */
  93.     int pstsize;        /* set size    */
  94.     int units;            /* current units */
  95.     int ljust;            /* left justification:0-left 1-center 2-right*/
  96.     int rjust;            /* right justification */
  97.     int usage;            /* page usage : 0-left 1-right 2-both     */
  98.     int vpos;            /* vertical pos: 0-top 1 - bottom      */
  99.     int display;        /* display or not...*/
  100.     char text[PTEXTMAX];    /* text            */
  101.     int distance;        /* distance (in mu's*/
  102.     int fpage;            /* print from page #*/
  103.     int tpage;            /* print to page #  */
  104.     struct txtattr tattrib;    /* attributes block */
  105. };
  106.  
  107. #define REPELSTRUCT struct repelstruct
  108. struct repelstruct
  109. {
  110.    long artholder;
  111.    long regholder;
  112.    REPELSTRUCT *next_rep;
  113. };
  114.